<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

<%@page pageEncoding="UTF-8"%>
<%@include file="../WEB-INF/jspf/controlesessao.jspf"%>

<c:catch var ="catchException">
    <fmt:parseDate var="dI" value="${param.data_inicio}" pattern="dd/MM/yyyy"/>

    <sql:update var="insert" dataSource="jdbc/dbo_MicrosoftSQLServer">
        INSERT INTO [Sad].[dbo].[Turmas]
        ([id_curso],[codigo_turma],[inicio_turma],[fim_turma],[id_unidade],[id_turno],
        [id_cidade],[alunos_turma],[cliente_turma],[gratuita_turma],[id_tipoturma], [id_regra])
        VALUES (?,?,?,?,?,?,?,?,?,?,?,?)
        <sql:param value="${param.id_curso}"/>
        <sql:param value="${param.codigo_turma}"/>
        <sql:dateParam value="${dI}"/>
        <sql:dateParam value="${null}"/>
        <sql:param value="${param.id_unidade}"/>
        <sql:param value="${param.id_turno}"/>
        <sql:param value="${param.id_cidade}"/>
        <sql:param value="${param.alunos_turma}"/>
        <sql:param value="${param.cliente_turma}"/>
        <sql:param value="${param.gratuita_turma}"/>
        <sql:param value="${param.id_tipoturma}"/>
        <sql:param value="${param.id_regra}"/>
    </sql:update>
    <sql:query var="query" dataSource="jdbc/dbo_MicrosoftSQLServer">
        select @@IDENTITY as id
    </sql:query>

    <c:forEach var="identity" items="${query.rows}">
        <c:forEach var="horarios" items="${paramValues['horarios']}">

            <c:set var="parametros" value="${fn:split(horarios,'_')}"/>

            <c:set var="id_modulo" value="${parametros[0]}"/>
            <c:set var="id_componente" value="${parametros[1]}"/>
            <c:set var="id_horario" value="${parametros[2]}"/>
            <c:set var="dia" value="${parametros[3]}"/>
            <c:if test="${!empty id_horario}">
                <sql:update var="insert" dataSource="jdbc/dbo_MicrosoftSQLServer">
                    insert into Horarios_Turmas (id_turma,id_horario,dia, id_modulo, id_componente) values(?,?,?,?,?)
                    <sql:param value="${identity.id}"/>
                    <sql:param value="${id_horario}"/>
                    <sql:param value="${dia}"/>
                    <sql:param value="${id_modulo}"/>
                    <sql:param value="${id_componente}"/>
                </sql:update>
            </c:if>

        </c:forEach>
        <sql:update var="procedure" dataSource="jdbc/dbo_MicrosoftSQLServer">
            exec dbo.sp_gerar_reserva   ?
            <sql:param value="${identity.id}"/>
        </sql:update>
        <sql:update var="update" dataSource="jdbc/dbo_MicrosoftSQLServer">
            update turmas set situacao_turma='S'
            where id_turma=?
            <sql:param value="${identity.id}"/>
        </sql:update>
        <p><font color='blue'>Registro Salvo com sucesso! Turma Nº ${identity.id}</font></p>
            <c:if test="${empty param.id_turma}">
                <c:redirect url="fm_update_turmas.jsp">
                    <c:param value="${identity.id}" name="chave"/>
                    <c:param value="${sessionScope.token}" name="token"/>
                </c:redirect>   
            </c:if>        
        </c:forEach>

</c:catch>
<c:if test = "${catchException!=null}">
    <br>
    Erro : Não foi possível realizar alteração no banco de dados.<br>
    <p  style="color:red">${fn:substringAfter(catchException,"BD:")}
    </p>
    ${catchException}
</c:if>
